Client computing devices may request files, such as web pages, from one or more servers over a network. A client computing device that receives pages or other files from a server may locally store or cache the received files. The cached copies of the files may be presented for display again in the future from cache memory without sending a second request to the server, and without receiving the files from the server a second time. For example, a client computing device may receive from a server a page, such as a HyperText Markup Language (“HTML”) page, that include references to one or more image files or other files that are to be presented for display. The client computing device may then request the one or more image files from the appropriate server and present the image files for display, along with other content of the page. The client computing device may additionally store the one or more image files in a data store local to or accessible to the client computing device. These locally stored cached copies of the one or more image files may then be presented for display as part of a subsequently requested page that includes references to the same image files, provided that certain conditions are met. In this manner, the number of file requests to the server in order to display the subsequently requested page is less than if the client computing device requested the previously received images files a second time, rather than retrieve locally cached copies of the image files. However, if a subsequently requested file differs from a previously received file, the client computing device typically must receive the subsequently requested file in full.